﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Expressions;

namespace WebQuestionnaire.Core.DataInterfaces
{
    public interface IRepository<T, IdT> :
        SharpArch.Core.PersistenceSupport.NHibernate.INHibernateRepositoryWithTypedId<T, IdT>
    {
        List<T> GetPaged(int page, int pageSize, out long TotalRecords);

        IList<T> FindAll(Expression<Func<T, bool>> expression);

        T FindOne(Expression<Func<T, bool>> expression);
    }
}